Bonus server with community bonus round gaming

ABSTRACT

A bonus server system comprises a network interface and a processor. The network interface is configured to receive game information from a first game machine and transmit an initiation message to the first game machine and to a second game machine. The processor is configured to determine whether to initiate a community bonus round based on at least some of the game information and generate the initiation message based on the determination to initiate the community bonus round.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. Non-Provisional application Ser. No. 11/202,483 titled “Community Bonus Round Gaming,” filed Aug. 11, 2005, which claims the priority of U.S. Provisional Application Ser. No. 60/707,048 titled “Community Bonus Round Gaming,” filed Aug. 9, 2005, which are both hereby incorporated by reference.

BACKGROUND

1. Field of the Invention

The present invention relates generally to gaming, and more particularly, to a bonus server with community bonus round gaming.

2. Description of the Prior Art

With the continued expansion of casino gambling, casino companies must compete more than ever for gambling dollars. To attract customers, casino companies are avoiding the traditional short-term, stop-gap solutions (e.g. increasing the buffet offering, giving rooms away, advertising double and triple points) and focusing on improving the guest's overall casino experience.

One technique to improve the guest's casino experience is to implement a bonus game in slot machines. A bonus game may be triggered during normal game play on a slot machine and offers players a new game. For example, a video poker slot machine offered International Game Technology (IGT) triggers a bonus game when certain conditions are met. Once bonus game play is complete, the IGT video poker slot machine resumes normal game play.

Another example of improving the casino experience is a slot machine with progressive payouts. As each individual slot machine plays a game, the progressive payout increases. The slot machine displays the progressive payout on a large screen to encourage other players to participate. The server collects information regarding the income received from the different slot machines and creates a jackpot. When the specific slot machine “hits the jackpot” such as triples sevens, the specific slot machine wins the progressive payout. An example of the slot machine with progressive payouts is the “Wheel of Fortune” slot machine.

There are approximately 754,000 slot machines currently installed in North America. This represents a 400% increase from the number of machines installed in 1991. Although many of these slot machines appear to have different games, operate as slot machines with progressive payouts, or offer a bonus game, the vast majority of slot machines operate extremely similarly. For example, the “Terminator” slot machine plays the same game as the “I Love Lucy” slot machine. Aside from slight differences in graphics and sound, game play has not significantly changed.

SUMMARY OF THE INVENTION

The invention addresses the problems above by providing a bonus server system. The bonus server system comprises a network interface and a processor. The network interface receives game information from a first game machine and transmits an initiation message to the first game machine and a second game machine. The processor determines whether to initiate a community bonus round based on at least some of the game information and generates the initiation message based on the determination to initiate the community bonus round.

The processor may monitor the first game machine to determine if a triggering event to initiate the community bonus round has occurred. The processor may command the first game machine to display a request to join the community bonus round and receive a reply indicating an acceptance or refusal. The processor may command the first game machine to display a bonus message indicating that the community bonus round has been initiated. The processor may calculate a score of one or more players in the community bonus round. The processor may determine the result of the community bonus round. The processor may operate the community bonus round. The processor may upload software onto the first game machine and the second game machine to prepare for participation in the community bonus round. The first game machine may comprise a slot machine. In addition, the first game machine may further comprise a ticket printer configured to print one or more coupons redeemable by a player.

A method for gaming comprises the steps of receiving game information from a first game machine, determining to initiate a community bonus round based on at least some of the game information, generating an initiation message based on the determination to initiate the community bonus round, and transmitting the initiation message to the first game machine and to a second game machine.

A software product for gaming comprises software and a storage medium operational to store the software. The software is operational when executed by a processor to direct the processor to receive game information from a first game machine, determine to initiate a community bonus round based on at least some of the game information, generate an initiation message based on the determination to initiate the community bonus round, and transmit the initiation message to the first game machine and to a second game machine.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of a system for gaming in one embodiment of the invention.

FIG. 2 is an illustration of a game machine in one embodiment of the invention.

FIG. 3 is a flow chart depicting the initiation and play of a community bonus round in one embodiment of the invention.

FIG. 4 is a flow chart depicting the initiation and play of a community bonus round in another embodiment of the invention.

FIG. 5 is a block diagram of the game machine in one embodiment of the invention.

FIG. 6 is a block diagram of a game machine module in one embodiment of the invention.

FIG. 7 is a block diagram of a bonus server module in one embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

The embodiments discussed herein are illustrative of one example of the present invention. As these embodiments of the present invention are described with reference to illustrations, various modifications or adaptations of the methods and/or specific structures described may become apparent to those skilled in the art. All such modifications, adaptations, or variations that rely upon the teachings of the present invention, and through which these teachings have advanced the art, are considered to be within the scope of the present invention. Hence, these descriptions and drawings should not be considered in a limiting sense, as it is understood that the present invention is in no way limited to only the embodiments illustrated.

Community bonus round game play across multiple game machines allows multiple players to participate in the same game. A game machine is a machine that allows a player to input data and/or money into the game machine to play a game for the opportunity to win points, currency, awards, or prizes. One example of the game machine is a slot machine.

In one embodiment, the game machine allows the player to play games much like a traditional slot machine. However, a community bonus round may be triggered to engage the game machine in a community bonus round. Simultaneously, or soon thereafter, one or more other game machines may be invited to join the community bonus round thereby allowing other players to participate within the same community bonus round. In one example, players cooperate within the community bonus round to maximize scores for all participants. Alternatively, the community bonus round may allow multiple players to compete with each other for points, currency, awards, or prizes. In another example, players may receive a bonus by merely playing within the community bonus round.

FIG. 1 is an illustration of a system for gaming 100 in one embodiment of the invention. The system for gaming 100 comprises the bonus server 110, the game machines 120, 130, and 140, and the communications network 150. The communications network 150 is coupled to the bonus server 110 and the game machines 120, 130, and 140.

The communications network 150 may comprise a single device or multiple devices. In one embodiment, the communications network 150 is a router that routes data to a limited number of devices. In another embodiment, the communications network 150 comprises multiple routers, bridges, and hubs that couple a larger number of devices. A communications network 150 may be a local area network (LAN), a wide area network (WAN), a globally accessible network, such as the Internet, or any other network that allows devices to communicate and transmit data to each other.

Although the communications network 150 illustrated within FIG. 1 appears to be a “star” topology (i.e. each device communicates to a central hub), the communications network 150 may be any topology. In one example, the communications network 150 comprises a peer-to-peer network wherein the devices connect directly to each other in a “ring” topology.

The bonus server 110 is any device or system configured to generate and transmit an initiation message to the game machines 120, 130, and 140, to initiate the community bonus round, receive game information from the game machines 120, 130, and 140, and determine a result for the community bonus round.

The initiation message is any signal, message, or instruction that directs the game machines 120, 130, or 140 to activate the community bonus round. The initiation message may further comprise a message to the players of the game machines 120, 130, and 140, notifying the players of the impending community bonus round and requesting further input.

The community bonus round is any extra, special, premium, or bonus mode that follows a normal gaming mode and may be played by two or more game machines 120, 130, and/or 140. In one embodiment, the community bonus round is triggered upon the occurrence of some preset condition on one of the game machines 120, 130, or 140.

In some embodiments, the community bonus round is collaborative, competitive, or associative. In one example, when the community bonus round is collaborative, the players of the first game machine 120 and the other participating game machines 130 and 140 will play together to achieve a bonus goal during the round. For example, the goal of the community bonus round is to score more points than some preset limit. If, at the end of the community bonus round play, the sum of all of the players points total more than the preset limit, the bonus server 110 awards points, currency, awards, or prizes to the players of the participating game machines 120, 130, and 140. The end of the community bonus round may be triggered by time expiring, a maximum number of spins engaged, the sum of the players' scores reaching a preset limit, or the success of achieving the goal.

In another example, the community bonus round is competitive. In this example, the players of the first game machine 120 and the other participating game machines 130 and 140 play against each other for points, currency, awards, or prizes. The bonus server 110 may monitor and calculate the individual scores for the different participating game machines 120, 130, and 140. When the community bonus round ends, the bonus server 110 determines the winner of the community bonus round. In one example, the winner of the community bonus round is the first player to achieve some preset goal. In another example, the winner is the player who scored the most points within a given time. The community bonus round may end when time expires, a maximum number of spins are engaged, or the preset goal is achieved.

In another example, the community bonus round is associative. In this example, the players of the first game machine 120 and the other participating game machines 130 and 140 join the community bonus round and are awarded points, currency, awards, or prizes for merely participating. For example, the community bonus round may comprise the first game machine 120 displaying a golfer hitting a golf ball. Subsequently, the golf ball may be depicted as bouncing by the participating game machines 130. The golf ball may also be depicted landing close or into a hole on another participating game machine 140. The bonus server 110 may then calculate the scores and results of the community bonus round. For example, the bonus server 110 may award a higher number of points to the game machines 120 and 140 that depict the golfer's swing or the golf hole. The bonus server 110 may award a different number of points to every participating game machine 130 that depicted the golf ball bouncing or rolling. The community bonus round ends when some condition is met. In this example, the community bonus round ends when the golf ball is depicted as coming to a halt.

The game information is any information or data that indicates metrics or results from a game. Some examples of game information are a state of play of the game machine 120, 130, and/or 140, player information, status of the community bonus round, game machine data, a request to join the community bonus round, a refusal to join the community bonus round, and/or an acceptance to join the community bonus round.

The state of play of the game machine 120, 130, and/or 140 comprises the current activity of the game machine 120, 130, and/or 140. States of play may include, but are not limited to, waiting for a player to initiate game play, normal game play, activating the community bonus round, playing the community bonus round, or transitioning from normal game play to the community bonus round.

The game information may also comprise the request to join the community bonus round, the refusal to join the community bonus round, and/or the acceptance to join the community bonus round. In one example, the player receives a request to join the community bonus round on the game machine 120. The player subsequently inputs the acceptance or refusal to join the community bonus round. The game machine 120 transmits the acceptance or refusal to the bonus server 110. In one example, the bonus server 110 or other game machines 130 or 140 receive the acceptance and then adds the game machine 120 to an existing community bonus round. In another example, the game machine 120 performs at least some of the logic to activate the community bonus round. In this example, the game machine 120 initiates the community bonus round. The game machine 120 then transmits the request to join the community bonus round to the bonus server 110, which, in turn, transmits the request to the other game machine 130 or 140 to join the community bonus round.

In one embodiment, the bonus server 110 controls at least some of the game play on the game machines 120, 130, and/or 140. For example, the player engages the game machine 120 to play a game, while the bonus server 110 performs the game logic that controls the parameters and game execution.

The game machines 120, 130, and 140 are devices or systems that are configured to activate the community bonus round and transmit game information in the community bonus round.

Although the bonus server 110 is illustrated in FIG. 1 as a separate device from the game machines 120, 130, or 140, some or all of the functions of the bonus server 110 may be contained within a software module of one of the game machines 120, 130, or 140.

Optionally, an administrative server and a marketing server (not shown in FIG. 1) may be devices or systems on the communications network 150. An administrative server maintains information relating to game play and community bonus round play as well as metrics from the bonus server 110 and the game machines 120, 130, and 140. In one example, the administrative server receives and stores scores, player information, wins, losses, currency received, and the currency paid out by each game machine 120, 130, and 140. The administrative server may perform calculations to determine the relative success of each game machine 120, 130, and 140. The administrative server may also perform calculations to determine the relative success of individual games on the game machines 120, 130, and 140, as well as the outcome of community bonus rounds. These functions may also be performed by the bonus server 110. A marketing server may store advertisements or marketing information. In one example, the marketing server sends advertisements and/or marketing information to the game machine 120, 130, and 140 to be displayed.

FIG. 2 is an illustration of a game machine 200 in one embodiment of the invention. The game machine 200 comprises a bonus display 210, a primary display 220, a programmable button panel 230, a ticket printer 240, a bill/ticket acceptor 250, a player loyalty system 260, a coin tray 270, and a candle 280.

The bonus display 210 and the primary display 220 are any devices configured to visually interact with the player of the game machine 200. For example, the bonus display 210 and/or the primary display may be a television screen, a monitor, a touch-screen, a tablet display, a liquid crystal display (LCD), a plasma device, a cathode-ray tube (CRT) screen, a flat panel device, a terminal display, or a rear projection device. In other embodiments, the bonus display 210 and the primary display 220 are the same display. The bonus display 210 may be configured to show the game play of the game machine 200. In one example, the bonus display 210 displays the same game play as the primary display 220 thereby allowing spectators to view the game play.

The bonus display 210 may be configured to display information associated with a community bonus round, advertisements, games, or player information. In one example, the bonus display 210 displays information associated with the community bonus round such as how to play the community bonus round, when the community bonus round will begin, an offer to join the community bonus round, community bonus round play or scores. The primary display 220 may also be configured to display information associated with the community bonus round.

In another example, the bonus display 210 is configured to display advertisements. Advertisements may contain information selling the functions of the game machine 200, games offered by the game machine 200, services offered by the owner or leaser of the game machine, or any other advertisements. The bonus display 210 may also be configured to display available games. In another embodiment, the bonus display 210 displays scores or gaming results of the player of the game machine 200. The primary display 220 may also be configured to display advertisements, available games, scores, and/or gaming results.

The programmable button panel 230 is configured to accept input from the player of the game machine 200. In one example, each individual buttons on the programmable button panel 230 may be programmed to perform certain functions. Although ten buttons are depicted, the programmable button panel 230 may comprise any number of buttons, joysticks, or switches. The programmable button panel 230 may also comprise a touch screen or other device capable of accepting player input.

The ticket printer 240 is any printer capable of printing receipts, tickets, or other documents for the player or game machine 200 technician. In some embodiments, the ticket printer 240 may print advertisements or coupons that are redeemable by the player.

The bill/ticket acceptor 250 is any device capable of receiving and reading currency, tokens, or tickets. The bill/ticket acceptor 250 may comprise a card reader configured to receive and read credit cards, debit cards, or stored value cards.

The player loyalty system 260 is any device capable of receiving player information from the player of the game machine 200. In one embodiment, the player loyalty system 260 comprises a card reader that may receive and read player information from a player loyalty card. In some embodiments, the player loyalty system 260 comprises a keypad or touch screen with which the player may enter a password, input player information, and/or request services.

Player information may comprise player identification, game preferences, time spent playing each game, casino preference, drink preference, associated friends, family members, clubs, hobbies, money spent, and winnings. The player information may be stored on a player loyalty card, bonus server 110 (FIG. 1), and/or game machine 200. The player loyalty card is any card that may be carried by a player that contains at least some player information.

The status of the community bonus round may indicate the game machine 200's activation of the community bonus round, the preparation to begin the community bonus round, or the community bonus round game play. Game machine data comprises resident games, software versions, firmware versions, audit history, diagnostic history, and the amount of currency available in the game machine 200.

The coin tray 270 is a tray configured to hold coins or tokens that are issued from the game machine 200. The candle 280 is a reflector and/or light. In some embodiments, the candle 280 indicates that the game machine 200 requires service or is in a tilt condition.

FIG. 3 is a flow chart depicting the initiation and play of a community bonus round in one embodiment of the invention. FIG. 3 begins with step 300. In step 310, the first game machine 120 (FIG. 1) transmits game information to the bonus server 110. In one example, a player inputs currency into the first game machine 120. The first game machine 120 transmits a message to the bonus server 110 indicating that currency has been received and game play has been initiated.

In step 320, the bonus server 110 determines a community bonus round activation on the first game machine 120. In some embodiments, the bonus server 110 monitors the first game machine 120 or the game logic to determine if the conditions are met. For example, the bonus server 110 may determine which conditions are necessary to trigger the community bonus round such as hitting a jackpot. Accordingly, if the game logic determines that this condition is to occur, then the bonus server 110 triggers the community bonus round.

In step 330, the bonus server 110 generates an initiation message to the first game machine 120 and one or more other game machines 130 and/or 140 to initiate the community bonus round. In some embodiments, the bonus server 110 generates messages to invite the players on the game machines 120, 130, and 140 to participate in the community bonus round. The bonus server 110 then generates a command to prepare the game machines 120, 130, and/or 140 that accepted joining the community bonus round. In one example, the bonus server 110 generates a command to the game machines 120, 130 and/or 140 participating within the community bonus round to display the name and location of each player. In another example, the bonus server 110 generates a command to the participating game machines 120, 130 and/or 140 to display rules of the community bonus round or a count-down of when the community bonus round is to begin. In a further example, the bonus server 110 downloads software or data to prepare the game machines 120, 130, and/or 140 to play the community bonus round.

In step 340, the bonus server 110 activates the community bonus round on the first game machine 120. In one example, the bonus server 110 generates a command to activate the community bonus round to the first game machine 120. The first game machine 120 receives the command, generates the necessary graphics, and prepares to receive input from the player. In some embodiments, the bonus server 110 performs the necessary community bonus round logic and processes player inputs received from the first game machine 120 and other game machines 130 and/or 140.

In step 350, the bonus server 110 determines results for the community bonus round. In one example, the bonus server 110 collects scores from the first game machine 120 and the other participating game machines 130 and/or 140. The final scores may be calculated by the bonus server 110 as the community bonus round is played or the final scores may be calculated by the participating game machines 120, 130, and/or 140. Once the play of the community bonus round is completed, the bonus server 110 proceeds to calculate final results depending on the rules of the community bonus round. FIG. 3 ends in step 360.

FIG. 4 is a flow chart depicting the initiation and play of a community bonus round in another embodiment of the invention. FIG. 4 begins in step 400. In step 405, the player initiates game play. In one example, the player inputs currency, tokens, or tickets into the bill/ticket acceptor 250 (FIG. 2) of the game machine 120 (FIG. 1).

In step 410, the game machine 120 sends a game play event to the bonus server 110. In one example, the game machine 120 tracks the amount of currency received and prepares to initiate a game. The game machine 120 notifies the bonus server 110 that the player initiated game play. In some embodiments, the bonus server 110 directs the game machine 120 to display a selection of games to the player and prepare to receive a player selection. The player may input the selection with the programmable button panel 230 or through the touch-screen primary display 220. The game machine 120 directs the game selection to the bonus server 110 which then generates a control signal to the game machine 120 to display necessary graphics and program the appropriate inputs to play the selected game. The bonus server 110 also performs the game logic necessary to play the game. While the game is played, the game machine 120 transmits player inputs to the bonus server 110 which generates appropriate commands depending on the game logic.

In step 415, the bonus server 110 determines if the community bonus round is triggered. The bonus server 110 monitors the game play and the state of the game machine 120 to determine if those conditions are met. If the conditions are not met, FIG. 4 ends in step 450.

If the conditions are met, then FIG. 4 continues to step 420 where the bonus server 110 selects game machines 120, 130, and/or 140 and determines the bonus messages.

The bonus server 110 selects game machines 200 to join the community bonus round. The bonus server 110 may determine if any conflicts or game incompatibilities exist within each possible game machine 120, 130, and/or 140. In some embodiments, the bonus server 110 reviews player information to determine if any players are associated with each other. If there are available players or club members associated with the player playing the game machine 120 that has begun the community bonus round, the bonus server 110 may determine bonus messages. In one example, the bonus server 110 generates a command to display an invitation for the community bonus round to those players.

In one example, the bonus server 110 notifies the select game machines 120, 130, and/or 140 that a community bonus round has been triggered. The bonus server 110 commands the select game machines 120, 130, and/or 140 to display messages and graphics to the player on the game machines' primary display 220 or bonus display 210.

In other embodiments, the bonus server 110 contacts other bonus servers 110 to coordinate community bonus round logic between a plurality of game machines 120, 130, and 140.

In step 425, the bonus server 110 sends a start community bonus round signal to the select game machines 120, 130, and/or 140 identified in step 420 and begins timing. In one example, bonus server 110 generates commands to the select game machines 120, 130, and/or 140 to load a game interface, display necessary graphics, and program the respective programmable button panels 230 to play the community bonus round. In another example, the bonus server 110 generates a signal to the select game machines 120, 130, and/or 140 to display a countdown on the respective bonus displays 210 to herald the beginning of the community bonus round.

In step 430, the select game machines 120, 130, and/or 140 begin the community bonus round. Any graphics and community bonus round play may be depicted on the select game machines' bonus display 210, the primary display 220, or both.

In step 435, the select game machines 120, 130, and/or 140 send scores to the bonus server 110. In some embodiments, the bonus server 110 monitors the select game machines 120, 130, and/or 140 while directing community bonus round logic. In one example, the bonus server 110 tallies and calculates the scores of the select game machines 120, 130, and/or 140 during community bonus round play.

In step 440, the bonus server 110 calculates and transmits the community bonus round results to the select game machines 120, 130, and/or 140. In step 445, the bonus server 110 transmits messages to select game machines 120, 130, and/or 140. In some embodiments, the bonus server 110 directs the select game machines 120, 130, and/or 140 to display the results of the community bonus round play, award points, currency, awards, or prizes, and print tickets or receipts. The bonus server 110 then directs the select game machines 120, 130, and/or 140 to return to normal game play. FIG. 4 ends in step 450.

FIG. 5 is a block diagram of the game machine 200 in one embodiment of the invention. The game machine 200 includes a system bus 580 coupled to a processor 510, memory system 520, storage system 530, input/output (I/O) interface 540, communications (com.) network interface 550, primary display 220, and the bonus display 210. The communications network interface 550 is further coupled to an external communications link 590.

The processor 510 is configured to execute software or instructions. The memory system 520 is any memory device configured to hold data, either permanently or temporarily, to make the data available to any components connected to the system bus 580. The memory system 520 may comprise battery-backed random access memory or read-only memory (ROM).

The storage system 530 is any storage device or group of storage devices configured to store data permanently or temporarily. In one embodiment, the storage system 530 implements a Read/Verify-after-Write (RVAW) policy where data is verified after being stored within the storage system 530. Further, the storage system 530 may comprise a storage device configured to receive and read external media.

The I/O interface 540 is any interface or device configured to provide input or output to the player of the game machine 200. For example, the I/O interface 540 may comprise a video interface, audio interface, a remote control, a keypad, joystick, touch-screen, or buttons. In another embodiment, the I/O interface 540 is coupled to the programmable button panel 230, the ticket printer 240, the bill/ticket acceptor 250, and the player loyalty system 260 which are each depicted in FIG. 2.

The communications network interface 550 is any communication interface configured to transfer data between any components connected to the system bus 580 and any network over the external communications link 590. The external communications link 590 couples the game machine 200 to any communications network.

FIG. 6 is a block diagram of the game machine module 600 in one embodiment of the invention. The game machine module 600 is software or hardware that is resident on the game machine 200 (FIG. 2). The game machine module 600 comprises a game client 610, client manager 620, client tilt engine 630, client state manager 640, client diagnostic module 650, client communication manager 660, client administrative console module 670, and game machine device drivers 680.

The game client 610 is an application configured to perform standard functions on the game machine 200. In some embodiments, the game client 610 processes game machine 200 inputs (e.g. a button press), communicates game events to the bonus server 110 (FIG. 1), controls output to the bonus display 210 (FIG. 2), controls output to the primary display 220, and/or maintains the game machine 200 state. In some embodiments, the game client 610 relies on data libraries, such as tilt and bonus server libraries, to perform standard functions.

The client manager 620 may function as the software controller for the game machine 200. The client manager 620 manages the game machine 200 configuration, loads games, unloads games and manages the display of marketing events.

The client manager 620 may also control the display of advertisements. In some embodiments, the client manager 620 may receive advertisements from a marketing server. When an advertisement is received by the client manager 620, the client manager 620 passes the advertisement to the game client 610 to be displayed.

The client tilt engine 630 generates tilts on error conditions in order to prevent cheating and flag errors in game play. For example, the client tile engine 630 triggers tilt conditions by errors associated with money, tampering with the game machine 200, alterations with software and/or firmware, or the behavior of third party systems.

The client state manager 640 monitors the operation and state of the game machine 200. The client state manager 640 is a repository of the current and past data for the game machine 200 and may function to maintain the data for the game machine's 200 hardware and software components.

The client diagnostic module 650 provides hardware and software diagnostic tests. For example, the client diagnostic module 650 checks the components of the game machine module 600 and the game machine 200. Regulatory requirements may require that gaming devices employ mechanisms to verify that game components are authentic and have not been corrupted or tampered with. The client diagnostic module 650 may perform a diagnostic test to verify and authenticate each component of the game machine module 600.

The client communication manager 660 controls the communication from the game machine 200 to the communications network. In one embodiment, the client communication manager 660 encrypts and decrypts communications to and from the communications network.

The client administrative console module 670 controls the function and display of the administrative console to the player or technician of the game machine 200. The administrative console is an interface configured to receive input from the technician. The game client 610 may trigger an administrative mode within the game machine 200 to display the administrative console.

The administrative console comprises options for configuring the game machine 200 and/or the game machine module 600. Further, the administrative console comprises options for diagnostic testing, viewing game information, viewing game machine 200 information, or viewing game machine module 600 information.

The game machine device drivers 680 are used to control and configure the components of the game machine 200. There may be a separate game machine device driver 480 for each component including the bonus display 210, the primary display 220, the programmable button panel 230, the ticket printer 240, the bill/ticket acceptor 250, the player loyalty system 260, the coin tray 270, and the candle 280 (FIG. 2). In one embodiment, one or more of the game machine device drivers 680 may be configured to generate reports or events that are received by the game client 610 or the bonus server 110 (FIG. 1).

For example, the game machine device driver 680 for the programmable button panel 230 may control the button background color, button text, button text color, and button value. In another example, when a button on the programmable button panel 230 is depressed, the appropriate game machine device driver 680 generates an event which identifies the button pressed and the button value. The game machine device driver 680 for the programmable button panel 230 may reprogram the buttons and button values as a game is played or when a community bonus round is activated.

FIG. 7 is a block diagram of a bonus server module 700 in one embodiment of the invention. The bonus server module 700 is software that is resident on the bonus server 110 (FIG. 1) and controls the community bonus round. The bonus server module 700 comprises a server module 705, a platform manager 710, a server tilt engine 715, a server state manager 720, a server communication manager 725, a synchronization agent 730, a game matrix module 735, a rules engine 740, a server diagnostic module 745, a server administration console module 750, and server device drivers 755.

The server module 705 interacts with the game client 610 (FIG. 6) within the game machine module 600 to control game play and the community bonus round. In some embodiments, the server module 705 controls all of the game logic while the game client 610 controls and records player inputs and graphics on the game machine's primary display device 210 (FIG. 2). In one example, the server module 705 manages the game state (e.g. number of credits in the game machine 200), determines outcomes, controls overall game behavior, and controls the community bonus round. The game client 610 is responsible for processing the game machine 200 input events (i.e. button press) and displays results (e.g. spinning and stopping wheels).

In other embodiments, the game logic is split between the server module 705 and the game client 610. For example, the server module 705 may control overall game behavior while the game client 610 determines outcomes. In further embodiments, the game client 610 performs all of the game logic and the server module 705 collects statistics and monitors performance of the game machine 200.

The server module 705 may control the community bonus round and game levels. In one example, the server module 705 controls community bonus round gaming between two or more game machines 200. For example, the server module 705 may set the condition necessary for the player of one game machine 200 to trigger a community bonus round. When that condition is met, the server module 705 determines which game machines 200 are active on the network, which game titles are loaded on each active game machine, which of the loaded games are compatible with the community bonus round, and if the games are in a state to participate in the community bonus round. The server module 705 extends invitations to the players which satisfy all conditions to play within the community bonus round. The server module 705 initiates a community bonus round with those which accept the invitation and then controls the community bonus round logic. It is appreciated that the server module 705 can simultaneously control game logic of multiple game machines 200 and community bonus round logic from multiple community bonus rounds.

During community bonus round play, the server module 705 returns play results and community bonus round updates to the participating game machines 200. The outcome of the community bonus round is also sent to the participating game machines 200. For example, each game machine receives the player's score or credits won in the community bonus round which may be displayed on the game machine's bonus display device 210 (FIG. 2). The process of community bonus round play is further described herein.

The server module 705 may also be configured to interact with other bonus servers 110 or other server modules 705 when controlling the community bonus round. For example, multiple server modules 705 may coordinate a community bonus round between many game machines 200. Each server module 705 may handle a specific number of game machines 200 thereby allowing the casino to provide for community bonus round gaming among any number of game machines 200 in any location (e.g. between different floors of the casino or between different casinos.) It is appreciated that the server modules 705 allow for any amount of scaling to control and coordinate community bonus round game play.

In another embodiment, the server module 705 controls game levels. Game levels are similar to console video games where game play on the game machine 200 progresses from one level to the next. The determination of the triggering event that controls the transition from one level to another may be determined by the game developer. The server module 705 monitors the game machine 200 to determine if the triggering event is met and then controls the game logic that instructs the game machine 200 accordingly. It is appreciated that the server module 705 may control both community bonus rounds and game levels simultaneously.

In another example, the server module 705 may also store each player's top score and highest level achieved. This information may be stored on the game machine 200, the bonus server 110 (FIG. 1), and/or on the player loyalty card. As a result, the player may return, input the player loyalty card and resume playing at a different game machine 200 at the last level attained.

In further embodiments, the server module 705 is configured to load and unload games from the game machines 200. For example, the server module 705 may generate a command to remove or otherwise delete an existing game from the game machine 200. The server module 705 then downloads and loads client software, graphics, video data and sound data to the same game machine 200.

The platform manager 710, similar to the client manager 620 (FIG. 6) on the game machine 200, controls the software of the bonus server 110 (FIG. 1). In some embodiments, the platform manager 710 initiates the server module 705, loads and unloads games, coordinates the transmission of marketing events to the game machines 200, monitors maintenance, manages server configuration, controls the output of audit data, and processes events received from third-party systems.

The server tilt engine 715 monitors the operating state of the bonus server 110 and generates tilts on error conditions in order to prevent cheating.

The server state manager 720 monitors the operation of the bonus server 110. The server state manager 720 is a repository of the current and past data for data received from one or more of the game machines 200, the current and past data of the bonus server 110, and may function to maintain the data for the bonus server's 110 hardware and software components. The server state manager 720 also tracks the state of the bonus server 110 including, but not limited to, bonus server 110 undergoing maintenance, controlling one community bonus round, controlling multiple community bonus rounds, or communicating with other bonus servers 110.

The server communication manager 725 controls the communications from the bonus server 110 to and from the communications network. In one embodiment, the server communication manager 725 controls system authentication, communication channel termination, and processes asynchronous requests from external systems for data (e.g. meters, tilts, marketing). The platform manager 710 may control the server communication manager 725.

The synchronization agent 730 determines that at least one bonus server 110 is operating and processing game machine 200 requests. If a failure of the system should occur (e.g. there is no active bonus server 110 on the network), the synchronization agent 730 transitions all devices on the network to a failover state. For example, the synchronization agent 730 may send a signal to the client manager 620 to initiate a shut down of the game machine 200.

The game matrix module 735 is a data structure that defines relationships that are determined prior to activation of the gaming system. For example, the game matrix module 735 contains data that describes compatibility between games, compatibility of games and community bonus rounds, game functionality at different game machine 200 states, game functionality at different regions, and game licensing restrictions.

The rules engine 740 is a data structure containing conditions upon which events are triggered. In one example, the rules engine 740 may contain every game event that triggers a community bonus round. In some embodiments, the rules engine 740 also contains contingency conditions as well as events.

The server diagnostic module 745 provides hardware and software diagnostic checks of the bonus server 110 and the bonus server module 700. Regulatory requirements may require that the bonus server 110 employ mechanisms that verify that server components are authentic and have not been corrupted or tampered with. As a result, a diagnostic test is used to verify and authenticate each component of the bonus server 110 and the bonus server module 700.

The server administrative console module 750 controls the function and display of the administrative console to the player or technician of the bonus server 110. The server module 705 may trigger an administrative mode within the bonus server 110 to display a server administrative console.

The server administrative console comprises options for configuring the bonus server 110 and/or the bonus server module 700. Further, the server administrative console comprises options for server setup, security, game machines 200 settings, tilts, games, network setup, diagnostic tests, and marketing.

The server device drivers 755 are used to control and configure the components of the bonus server 110. There may be a separate server device driver 755 for each component of the bonus server 110. The components of the bonus server 110 may comprise a smart card reader, enclosure sensors, video display, network interface card, local storage system, I/O interface, and a memory system.

The bonus server module 700 and/or the game machine module 600 (FIG. 6) may have a marketing engine and a security module. In one example, the marketing engine manages the transmission and coordination of electronic marketing messages. Electronic marketing material, including advertisements and banners, may displayed by the game machine 200.

The security manager may control access to the game machine 200 and/or the bonus server 110. In one example, the security manager controls access to the client administration console 670 (FIG. 6) or the server administration console 750. In another example, the security manager may define access rights associated with different passwords. In other embodiments, the security manager may limit physical access to the inside of the game machine 200 or the bonus server 110. In one example, the security manager requires the technician to enter a smart card and input a password before allowing the technician to perform certain tasks on the game machine 200 or the bonus server 110.

The market for slot machines and game machines is dramatically increasing. As a consequence, casinos may lose players to an increasing number of competitors. In response, casinos are increasingly concerned with fostering player loyalty and improving profitability.

By allowing game machines 200 to play bonus rounds within a community, new games may be offered to players. The players within the community may directly compete with each other, work together, or experience new forms of entertainment that were previously unavailable. The casino may utilize community bonus round gaming to encourage groups, friends, associations, and clubs to game together or create excitement in a casino to entice other people to participate in community bonus round gaming. Community bonus round gaming may also be used by the casino to customize the gaming experience for different players by tracking their preferences, identities, associations, scores, and attained levels. In a marketplace where players are increasingly distracted by the number of slot machines, community bonus round gaming may be a new paradigm that refocuses player attention and increases the level of player service the casino can provide.

The above-described functions can be comprised of instructions that are stored on a storage medium. The instructions can be retrieved and executed by a processor. Some examples of instructions are software, program code, and firmware. Some examples of storage medium are memory devices, tape, disks, integrated circuits, and servers. The instructions are operational when executed by the processor to direct the processor to operate in accord with the invention. Those skilled in the art are familiar with instructions, processor(s), and storage medium.

In the foregoing specification, the invention is described with reference to specific embodiments thereof, but those skilled in the art will recognize that the invention is not limited thereto. Various features and aspects of the above-described invention may be used individually or jointly. Further, the invention can be utilized in any number of environments and applications beyond those described herein without departing from the broader spirit and scope of the specification. Accordingly, the specification and drawings are to be regarded as illustrative rather than restrictive. 

1. A bonus server system comprising: a network interface configured to receive game information from a first game machine and transmit an initiation message to the first game machine and to a second game machine; and a processor configured to determine whether to initiate a community bonus round based on at least some of the game information and generate the initiation message based on the determination to initiate the community bonus round.
 2. The bonus server system of claim 1 wherein the processor is configured to monitor the first game machine to determine if a triggering event to initiate the community bonus round has occurred.
 3. The bonus server system of claim 1 wherein the processor is configured to command the first game machine to display a request to join the community bonus round and receive a reply indicating an acceptance or refusal.
 4. The bonus server system of claim 1 wherein the processor is configured to command the first game machine to display a bonus message indicating that the community bonus round has been initiated.
 5. The bonus server system of claim 1 wherein the processor is configured to calculate a score of one or more players in the community bonus round.
 6. The bonus server system of claim 1 wherein the processor is configured to determine a result of the community bonus round.
 7. The bonus server system of claim 1 wherein the processor is configured to operate the community bonus round.
 8. The bonus server system of claim 1 wherein the processor is configured to upload software onto the first game machine and the second game machine to prepare for participation in the community bonus round.
 9. The bonus server system of claim 1 wherein the first game machine comprises a slot machine.
 10. The bonus server system of claim 1 wherein the processor is configured to command the first game machine to print one or more coupons redeemable by a player.
 11. A method for gaming, the method comprising: receiving game information from a first game machine; determining to initiate a community bonus round based on at least some of the game information; generating an initiation message based on the determination to initiate the community bonus round; and transmitting the initiation message to the first game machine and to a second game machine.
 12. The method of claim 11 further comprising monitoring the first game machine to determine if a triggering event to initiate the community bonus round has occurred.
 13. The method of claim 11 further comprising commanding the first game machine to display a request to join the community bonus round and receive a reply indicating an acceptance or refusal.
 14. The method of claim 11 further comprising commanding the first game machine to display a bonus message indicating that the community bonus round has been initiated.
 15. The method of claim 11 further comprising calculating a score of one or more players in the community bonus round.
 16. The method of claim 11 further comprising determining a result of the community bonus round.
 17. The method of claim 11 further comprising operating the community bonus round.
 18. The method of claim 11 further comprising uploading software onto the first game machine and the second game machine to prepare for participation in the community bonus round.
 19. The method of claim 11 wherein the first game machine comprises a slot machine.
 20. The method of claim 11 further comprising commanding the first game machine to print one or more coupons redeemable by a player.
 21. A software product for gaming, the software product comprising: software operational when executed by a processor to direct the processor to receive game information from a first game machine, determine to initiate a community bonus round based on at least some of the game information, generate an initiation message based on the determination to initiate the community bonus round, and transmit the initiation message to the first game machine and to a second game machine; and a storage medium configured to store the software.
 22. The software product of claim 21 wherein the software is operational when executed by the processor to monitor the first game machine to determine if a triggering event to initiate the community bonus round has occurred.
 23. The software product of claim 21 wherein the software is operational when executed by the processor to command the first game machine to display a request to join the community bonus round and receive a reply indicating an acceptance or refusal.
 24. The software product of claim 21 wherein the software is operational when executed by the processor to command the first game machine to display a bonus message indicating that the community bonus round has been initiated.
 25. The software product of claim 21 wherein the software is operational when executed by the processor to calculate a score of one or more players in the community bonus round.
 26. The software product of claim 21 wherein the software is operational when executed by the processor to determine a result of the community bonus round.
 27. The software product of claim 21 wherein the software is operational when executed by the processor to operate the community bonus round.
 28. The software product of claim 21 wherein the software is operational when executed by the processor to upload software onto the first game machine and the second game machine to prepare for participation in the community bonus round.
 29. The software product of claim 21 wherein the first game machine comprises a slot machine.
 30. The software product of claim 21 wherein the software is operational when executed by the processor to command the first game machine to print one or more coupons redeemable by a player. 